Image manipulation programs are used to modify or otherwise use image content captured using a camera. For example, an image manipulation program can remove or decrease noise from (i.e., de-noise) image content captured using the camera. An image manipulation program can also remove or decrease blurring in image content captured using the camera.
Noise and blurring can be caused by, for example, capturing images in low light conditions with low-end cameras.
Low-end cameras may increase the amount of exposure time used for recording an image. Increasing the amount of exposure time used for recording an image can increase the amount of camera shake during the recording of an image. Increasing camera shake introduces blurring into the image content as recorded by the camera. For example, as depicted in FIG. 1, an image 10 may be blurred as a result of shaking of the camera used to capture the image 10. The blurring may manifest by including objects 12a, 12b that are overlapping and offset from one another. Each of objects 12a, 12b is a separate image of a single object captured during a long exposure time.
Low-end cameras may include image sensors having a high sensitivity to light conditions. Increasing the sensitivity to light conditions can add noise to image content captured with the camera. For example, as depicted in FIG. 2, an image 10′ may be blurred as a result of a camera shake and added noise. The blurring caused by a camera shake may manifest by including objects 12c, 12d that are overlapping and offset from one another. Each of objects 12c, 12d are separate images of a single object captured during a long exposure time. In addition, each of the objects 12c, 12d is distorted by the addition of noise to the image 10′. The noise added to image 10′ can distort the objects 12c, 12d in different ways, thereby complicating the process of removing distortion from the image 10′.
Existing solutions for de-noising image content can improve the quality of image content having a very small amount of noise. However, the performance of existing solutions for de-noising image content is degraded for image content having increased noise levels. For example, noise in excess of 5% can cause existing de-noising solutions to destroy or otherwise corrupt blur information when used to remove noise from an image. Increasing the level of noise in image content thus prevents existing solutions from reliably estimating a blur kernel. An inaccurate blur kernel can degrade the quality of a de-blurred image. Applying existing solutions for de-noising image for de-blurring can therefore degrade the quality of image content.